package com.cac.demo.entity.materialScan;

import com.cac.demo.entity.mdsItem.MdsItemDTO;
import com.cac.demo.entity.mdsProduct.MdsProductDTO;
import com.cac.demo.entity.wmsReturnApply.WmsReturnApplyDTO;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * @className: WmsDeliverPlanDTO
 * @description: （描述这个类的作用）
 * @author:
 * @date: 2024/6/13 16:30:30 周四
 * @version: 1.0
 */
@Data
public class WmsDeliverPlanDTO {

    //序号
    private int rn;
    //主键ID
    private String wmsDeliveryPlanId;
    //质量信息ID
    private String wmsQualityInfoId;
    //1-材料;2-成品;3-物资;4-外购锻铸件;5-有库存交接;6-AO配套交接 7-自制件消计划 8-标准件
    private String deliveryType;
    //状态，0维护中，1已确认，2已移交，3已接收,4-已驳回，5-已作废
    private String deliveryStatus;
    //申请物料ID---->对接mds_item表中id 获取图号
    private String mdsItemId;
    //物料编码
    private String itemCode;
    //质量编号
    private String qualityCode;
    //物流识别码
    private String barcode;

    public String getmProductNumber() {
        return mProductNumber;
    }

    public void setmProductNumber(String mProductNumber) {
        this.mProductNumber = mProductNumber;
    }

    //成品型号
    private String mProductNumber;
    //配送数量
    private int deliveryQty;
    //移交人工号  （上账人）
    private String deliveryEmpCode;
    //配送日期
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GTM+8")
    private String deliveryDate;
    private String startTime;
    private String endTime;

    public String getStartTime() {
        return startTime;
    }

    public void setStartTime(String startTime) {
        this.startTime = startTime;
    }

    public String getEndTime() {
        return endTime;
    }

    public void setEndTime(String endTime) {
        this.endTime = endTime;
    }

    //接收人
    private String receiveEmpCode;
    //接收日期
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GTM+8")
    private String receiveDate;
    //接收备注
    private String receiveRemark;
    //驳回人工号
    private String rejectEmpCode;
    //驳回时间
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private String rejectDate;
    //机型编码
    private String productCode;
    private String productName;
    //驳回原因
    private String rejectReason;
    //创建人
    private String createdBy;
    //创建时间
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date creationDate;
    //最后修改人
    private String lastUpdatedBy;
    //最后修改时间
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date lastUpdateDate;
    //最后更新IP
    private String lastUpdateIp;
    //版本
    private String version;
    //批次
    private String batchNo;
    //架次
    private String startLotNo;
    //截止架次
    private String endLotNo;

    //制造厂
    private String attribute18;
    //供应商
    private String srmSupplyCode;
    //供应商ID
    private String srmSupplyId;

    private String supplyRegularNo;
    //接收数量
    private Integer receiveQty;
    private Integer maxQty;
    private Integer usableQty;
    private String deliveryUserId;
    private String deliveryDeptId;
    private String deliveryNote;
    private String aoNo;
    private String isPaper;
    //复试日期
    private String retestDate;
    private String remark;
    private String substituteCode;
    private String itemPlaneQty;
    private String sealDate;
    private String maxStorageDate;
    private String deliveryPlanCode;
    private String deliveryOrgCode;
    private String receiveOrgCode;
    private String ensureDate;
    private String receiveNote;
    private String wmsLocatorId;
    private String mesCheckQualitificationId;
    private String requireShop;

    //已入库数量
    private int storageQty;
    //物料名称
    private String itemName;

    //mds_product数据结果集
    private List<MdsProductDTO> productDTOList;
    //mds_item结果集
    private List<MdsItemDTO> mdsItemDTOList;
    //wms_return_apply结果集
    private List<WmsReturnApplyDTO> wmsReturnApplyDTOList;
    //待入库数量
    private int bePutIntoQty;
    //计量单位
    private String mdsUnit;
    //计量单位id
    private String mdsUnitId;
    //物料类型
    private String itemType;
    //账户名
    private String empName;
    //是否已协调
    private String isCoor;
    //物料箱最大物料数量
    private String maxNum;
    //合格证号
    private String mesCheckQualiticationId;
    //来源系统
    private String sourceSystem;

    private String tag;

    private String WmsItemInventoryId;

    private String invShop;

    private BigDecimal currentOnhandQty;

    private BigDecimal deliveryQty1;

    //工艺状态号
    private String processStatusNo;

}
